home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / prolog / ai.prl / opnprlg1.hqx / Open Prolog / Open Prolog.rsrc / CODE_36_PASLIB.txt < prev    next >
Text File  |  1993-04-15  |  12KB  |  247 lines

  1. # near model CODE resource
  2. # entry label at 0x0000
  3. export_478:
  4. entry:
  5. 00000000  2F00                     move.l     -[A7], D0
  6. 00000002  2F01                     move.l     -[A7], D1
  7. 00000004  302F 0010                move.w     D0, [A7 + 0x10]
  8. 00000008  C1EF 000E                muls.w     D0, [A7 + 0xE]
  9. 0000000C  322F 000C                move.w     D1, [A7 + 0xC]
  10. 00000010  C3EF 0012                muls.w     D1, [A7 + 0x12]
  11. 00000014  D041                     add.w      D0, D1
  12. 00000016  4840                     swap.w     D0
  13. 00000018  4240                     clr.w      D0
  14. 0000001A  322F 0012                move.w     D1, [A7 + 0x12]
  15. 0000001E  C2EF 000E                mulu.w     D1, [A7 + 0xE]
  16. 00000022  D081                     add.l      D0, D1
  17. 00000024  2F40 0010                move.l     [A7 + 0x10], D0
  18. 00000028  221F                     move.l     D1, [A7]+
  19. 0000002A  201F                     move.l     D0, [A7]+
  20. 0000002C  2F57 0004                move.l     [A7 + 0x4], [A7]
  21. 00000030  588F                     addq.l     A7, 4
  22. 00000032  4E75                     rts
  23. export_479:
  24. 00000034  4E56 0000                link       A6, 0
  25. 00000038  2F00                     move.l     -[A7], D0
  26. 0000003A  2F01                     move.l     -[A7], D1
  27. 0000003C  202F 0014                move.l     D0, [A7 + 0x14]
  28. 00000040  222F 0010                move.l     D1, [A7 + 0x10]
  29. 00000044  4EBA 0014                jsr        [PC + 0x14 /* 0000005A */]
  30. 00000048  2F41 0014                move.l     [A7 + 0x14], D1
  31. 0000004C  221F                     move.l     D1, [A7]+
  32. 0000004E  201F                     move.l     D0, [A7]+
  33. 00000050  4E5E                     unlink     A6
  34. 00000052  2F57 0004                move.l     [A7 + 0x4], [A7]
  35. 00000056  588F                     addq.l     A7, 4
  36. 00000058  4E75                     rts
  37. fn0000005A:
  38. 0000005A  48E7 3E00                movem.l    -[A7], D2,D3,D4,D5,D6
  39. 0000005E  2A00                     move.l     D5, D0
  40. 00000060  6A02                     bpl        +0x4 /* 00000064 */
  41. 00000062  4480                     neg.l      D0
  42. label00000064:
  43. 00000064  2C01                     move.l     D6, D1
  44. 00000066  6A02                     bpl        +0x4 /* 0000006A */
  45. 00000068  4481                     neg.l      D1
  46. label0000006A:
  47. 0000006A  2401                     move.l     D2, D1
  48. 0000006C  4842                     swap.w     D2
  49. 0000006E  4A42                     tst.w      D2
  50. 00000070  661C                     bne        +0x1E /* 0000008E */
  51. 00000072  3600                     move.w     D3, D0
  52. 00000074  4240                     clr.w      D0
  53. 00000076  4840                     swap.w     D0
  54. 00000078  6704                     beq        +0x6 /* 0000007E */
  55. 0000007A  80C1                     divu.w     D0, D1
  56. 0000007C  3400                     move.w     D2, D0
  57. label0000007E:
  58. 0000007E  4842                     swap.w     D2
  59. 00000080  3003                     move.w     D0, D3
  60. 00000082  80C1                     divu.w     D0, D1
  61. 00000084  3400                     move.w     D2, D0
  62. 00000086  2202                     move.l     D1, D2
  63. 00000088  4240                     clr.w      D0
  64. 0000008A  4840                     swap.w     D0
  65. 0000008C  6022                     bra        +0x24 /* 000000B0 */
  66. label0000008E:
  67. 0000008E  2400                     move.l     D2, D0
  68. 00000090  4240                     clr.w      D0
  69. 00000092  4840                     swap.w     D0
  70. 00000094  4842                     swap.w     D2
  71. 00000096  4242                     clr.w      D2
  72. 00000098  2601                     move.l     D3, D1
  73. 0000009A  7200                     moveq.l    D1, 0x00
  74. 0000009C  780F                     moveq.l    D4, 0x0F
  75. label0000009E:
  76. 0000009E  D482                     add.l      D2, D2
  77. 000000A0  D180                     addx.l     D0, D0
  78. 000000A2  D281                     add.l      D1, D1
  79. 000000A4  B083                     cmp.l      D0, D3
  80. 000000A6  6D04                     blt        +0x6 /* 000000AC */
  81. 000000A8  9083                     sub.l      D0, D3
  82. 000000AA  5201                     addq.b     D1, 1
  83. label000000AC:
  84. 000000AC  51CC FFF0                dbf        D4, -0x12 /* 0000009E */
  85. label000000B0:
  86. 000000B0  4A85                     tst.l      D5
  87. 000000B2  6A02                     bpl        +0x4 /* 000000B6 */
  88. 000000B4  4480                     neg.l      D0
  89. label000000B6:
  90. 000000B6  BB86                     xor.l      D6, D5
  91. 000000B8  6A02                     bpl        +0x4 /* 000000BC */
  92. 000000BA  4481                     neg.l      D1
  93. label000000BC:
  94. 000000BC  4CDF 007C                movem.l    D6,D5,D4,D3,D2, [A7]+
  95. 000000C0  4E75                     rts
  96. export_480:
  97. 000000C2  4E56 0000                link       A6, 0
  98. 000000C6  2F00                     move.l     -[A7], D0
  99. 000000C8  7000                     moveq.l    D0, 0x00
  100. 000000CA  102E 000A                move.b     D0, [A6 + 0xA]
  101. 000000CE  B06E 0008                cmp.w      D0, [A6 + 0x8]
  102. 000000D2  6F0A                     ble        +0xC /* 000000DE */
  103. 000000D4  487A 0018                pea.l      [PC + 0x18 /* 000000EE, pstring "String Range Check Abort" */]
  104. 000000D8  303C FE15                move.w     D0, 0xFE15
  105. 000000DC  A9C9                     trap       SysError
  106. label000000DE:
  107. 000000DE  201F                     move.l     D0, [A7]+
  108. 000000E0  4E5E                     unlink     A6
  109. 000000E2  2E9F                     move.l     [A7], [A7]+
  110. 000000E4  4E75                     rts
  111. 000000E6  5354                     subq.w     [A4], 1
  112. 000000E8  5252                     addq.w     [A2], 1
  113. 000000EA  4743                     chk.w      D3, D3
  114. 000000EC  484B                     pea.l      A3
  115. 000000EE  1853                     movea.b    A4, [A3]
  116. 000000F0  7472                     moveq.l    D2, 0x72
  117. 000000F2  696E                     bvs        +0x70 /* 00000162 */
  118. 000000F4  6720                     beq        +0x22 /* 00000116 */
  119. 000000F6  5261                     addq.w     -[A1], 1
  120. 000000F8  6E67                     bgt        +0x69 /* 00000161 */
  121. 000000FA  6520                     bcs        +0x22 /* 0000011C */
  122. 000000FC  4368 6563                chk.w      D1, [A0 + 0x6563]
  123. 00000100  6B20                     bmi        +0x22 /* 00000122 */
  124. 00000102  4162                     chk.w      D0, -[A2]
  125. 00000104  6F72                     ble        +0x74 /* 00000178 */
  126. 00000106  7400                     moveq.l    D2, 0x00
  127. export_481:
  128. 00000108  42A7                     clr.l      -[A7]
  129. 0000010A  48E7 E0E0                movem.l    -[A7], D0,D1,D2,A0,A1,A2
  130. 0000010E  41EF 0020                lea.l      A0, [A7 + 0x20]
  131. 00000112  3018                     move.w     D0, [A0]+
  132. 00000114  D0C0                     add.w      A0, D0
  133. label00000116:
  134. 00000116  2248                     movea.l    A1, A0
  135. 00000118  2448                     movea.l    A2, A0
  136. 0000011A  3219                     move.w     D1, [A1]+
  137. label0000011C:
  138. 0000011C  D2C0                     add.w      A1, D0
  139. 0000011E  E248                     lsr        D0.w, 1
  140. 00000120  6006                     bra        +0x8 /* 00000128 */
  141. label00000122:
  142. 00000122  3220                     move.w     D1, -[A0]
  143. 00000124  C261                     and.w      D1, -[A1]
  144. 00000126  6616                     bne        +0x18 /* 0000013E */
  145. label00000128:
  146. 00000128  5340                     subq.w     D0, 1
  147. 0000012A  6AF6                     bpl        -0x8 /* 00000122 */
  148. label0000012C:
  149. 0000012C  206F 001C                movea.l    A0, [A7 + 0x1C]
  150. 00000130  2508                     move.l     -[A2], A0
  151. 00000132  2F4A 0018                move.l     [A7 + 0x18], A2
  152. 00000136  4CDF 0707                movem.l    A2,A1,A0,D2,D1,D0, [A7]+
  153. 0000013A  2E5F                     movea.l    A7, [A7]+
  154. 0000013C  4E75                     rts
  155. label0000013E:
  156. 0000013E  487A 0012                pea.l      [PC + 0x12 /* 00000152, pstring "Set Range Check Abort" */]
  157. 00000142  303C FE15                move.w     D0, 0xFE15
  158. 00000146  A9C9                     trap       SysError
  159. 00000148  60E2                     bra        -0x1C /* 0000012C */
  160. 0000014A  5354                     subq.w     [A4], 1
  161. 0000014C  524E                     addq.w     A6, 1
  162. 0000014E  4743                     chk.w      D3, D3
  163. 00000150  484B                     pea.l      A3
  164. 00000152  1553 6574                move.b     [A2 + 0x6574], [A3]
  165. 00000156  2052                     movea.l    A0, [A2]
  166. 00000158  616E                     bsr        +0x70 /* 000001C8 */
  167. 0000015A  6765                     beq        +0x67 /* 000001C1 */
  168. 0000015C  2043                     movea.l    A0, D3
  169. 0000015E  6865                     bvc        +0x67 /* 000001C5 */
  170. 00000160  636B                     bls        +0x6D /* 000001CD */
  171. label00000161: // (misaligned)
  172. label00000162:
  173. 00000162  2041                     movea.l    A0, D1
  174. 00000164  626F                     bhi        +0x71 /* 000001D5 */
  175. 00000166  7274                     moveq.l    D1, 0x74
  176. export_482:
  177. 00000168  48E7 E0E0                movem.l    -[A7], D0,D1,D2,A0,A1,A2
  178. 0000016C  43EF 001C                lea.l      A1, [A7 + 0x1C]
  179. 00000170  3019                     move.w     D0, [A1]+
  180. 00000172  2059                     movea.l    A0, [A1]+
  181. 00000174  3400                     move.w     D2, D0
  182. 00000176  D442                     add.w      D2, D2
  183. label00000178:
  184. 00000178  D442                     add.w      D2, D2
  185. 0000017A  D2C2                     add.w      A1, D2
  186. 0000017C  4241                     clr.w      D1
  187. 0000017E  5248                     addq.w     A0, 1
  188. 00000180  6020                     bra        +0x22 /* 000001A2 */
  189. label00000182:
  190. 00000182  2461                     movea.l    A2, -[A1]
  191. 00000184  4242                     clr.w      D2
  192. 00000186  141A                     move.b     D2, [A2]+
  193. 00000188  D242                     add.w      D1, D2
  194. 0000018A  0C41 00FF                cmpi.w     D1, 0xFF
  195. 0000018E  6F0E                     ble        +0x10 /* 0000019E */
  196. 00000190  0441 00FF                subi.w     D1, 0xFF
  197. 00000194  9441                     sub.w      D2, D1
  198. 00000196  323C 00FF                move.w     D1, 0xFF
  199. 0000019A  6002                     bra        +0x4 /* 0000019E */
  200. label0000019C:
  201. 0000019C  10DA                     move.b     [A0]+, [A2]+
  202. label0000019E:
  203. 0000019E  51CA FFFC                dbf        D2, -0x6 /* 0000019C */
  204. label000001A2:
  205. 000001A2  51C8 FFDE                dbf        D0, -0x24 /* 00000182 */
  206. 000001A6  2061                     movea.l    A0, -[A1]
  207. 000001A8  1081                     move.b     [A0], D1
  208. 000001AA  3021                     move.w     D0, -[A1]
  209. 000001AC  2049                     movea.l    A0, A1
  210. 000001AE  D040                     add.w      D0, D0
  211. 000001B0  D040                     add.w      D0, D0
  212. 000001B2  D0C0                     add.w      A0, D0
  213. 000001B4  5448                     addq.w     A0, 2
  214. 000001B6  20A1                     move.l     [A0], -[A1]
  215. 000001B8  2288                     move.l     [A1], A0
  216. 000001BA  4CDF 0707                movem.l    A2,A1,A0,D2,D1,D0, [A7]+
  217. 000001BE  2E5F                     movea.l    A7, [A7]+
  218. 000001C0  4E75                     rts
  219. export_483:
  220. label000001C1: // (misaligned)
  221. 000001C2  48E7 C0C0                movem.l    -[A7], D0,D1,A0,A1
  222. label000001C5: // (misaligned)
  223. 000001C6  7201                     moveq.l    D1, 0x01
  224. fn000001C8:
  225. 000001C8  6006                     bra        +0x8 /* 000001D0 */
  226. export_484:
  227. 000001CA  48E7 C0C0                movem.l    -[A7], D0,D1,A0,A1
  228. label000001CD: // (misaligned)
  229. 000001CE  4241                     clr.w      D1
  230. label000001D0:
  231. 000001D0  206F 0018                movea.l    A0, [A7 + 0x18]
  232. 000001D4  226F 0014                movea.l    A1, [A7 + 0x14]
  233. label000001D5: // (misaligned)
  234. 000001D8  4240                     clr.w      D0
  235. 000001DA  1010                     move.b     D0, [A0]
  236. label000001DC:
  237. 000001DC  B308                     cmpm.b     [A1]+, [A0]+
  238. 000001DE  56C8 FFFC                dbne       D0, -0x6 /* 000001DC */
  239. 000001E2  6604                     bne        +0x6 /* 000001E8 */
  240. 000001E4  0A41 0001                xori.w     D1, 0x1
  241. label000001E8:
  242. 000001E8  1F41 001A                move.b     [A7 + 0x1A], D1
  243. 000001EC  2F6F 0010 0016           move.l     [A7 + 0x16], [A7 + 0x10]
  244. 000001F2  4CDF 0303                movem.l    A1,A0,D1,D0, [A7]+
  245. 000001F6  5C4F                     addq.w     A7, 6
  246. 000001F8  4E75                     rts
  247.